package graphics.app;

import graphics.Forma;

import java.util.ArrayList;
import java.util.Observable;

public class GraphicsData extends Observable{

	private ArrayList<Forma> forme=new ArrayList<Forma>();
	private ArrayList<Forma> selectedForme=new ArrayList<Forma>();

	public void aggiorna(){
		setChanged();
		notifyObservers();
	}

	
	//Totale selezionate
	public int getFormeCount(){
		return forme.size();
	}
	
	public Forma getForma(int index){
		return forme.get(index);
	}
	
	public void removeForma(Forma forma){
		forme.remove(forma);
	}
	
	public void removeForma(int forma){
		forme.remove(forma);
	}
	
	public void removeForme(ArrayList<Forma> forme){
		forme.remove(forme);
	}
	
	public void addForma(Forma forma){
		forme.add(forma);
	}
	

	//Forme selezionate
	public int getSelezioneFormeCount(){
		return selectedForme.size();
	}
	
	public Forma getSelezioneForma(int index){
		return selectedForme.get(index);
	}
	
	public void removeSelezioneForma(Forma forma){
		selectedForme.remove(forma);
	}
	
	public void removeSelezioneForma(int forma){
		selectedForme.remove(forma);
	}
	
	public void removeSelezioneForme(ArrayList<Forma> forme){
		selectedForme.remove(forme);
	}
	
	public void addSelezioneForma(Forma forma){
		selectedForme.add(forma);
	}
	
	public void pulisciSelezione(){
		selectedForme.clear();
	}
}
